Шаг 15 - Описание массива фиксированного размера

В следующей строке программы массив фиксированного размера описывается как массив типа Integer, имеющий 11 строк и 11 столбцов:

Dim MyArray(10, 10) As Integer

Первый аргумент представляет строки, а второй - столбцы. Как и при описании других переменных, если тип данных при описании массива не задается, подразумевается, что элементы массива имеют тип Variant. На каждый элемент массива типа Variant отводится 16 байт. Строковый элемент типа Variant занимает 22 байта. Для написания максимально компактной программы следует явно описывать массивы как принадлежащие к типу данных, отличному от Variant. В следующих строках программы сравниваются размерности не-скольких массивов:

' Массив Integer занимает 22 байта (11 элементов * 2 байта).
ReDim MyIntegerArray(10) As Integer
' Массив Double-precision занимает 88 байт (11 элементов * 8 байт).
ReDim MyDoubleArray(10) As Double
' Массив Variant занимает не менее 176 байт (11 элементов * 16 байт).
ReDim MyVariantArray(10)
' Массив Integer занимает 100 * 100 * 2 байт (20,000 байт).
ReDim MyIntegerArray (99, 99) As Integer 
' Массив Double-precision занимает 100 * 100 * 8 байт (80,000 байт).
ReDim MyDoubleArray (99, 99) As Double 
' Массив Variant занимает не менее 160,000 байт (100 * 100 * 16 байт).
ReDim MyVariantArray(99, 99)

Максимальные размеры массива варьируются в зависимости от имеющейся операционной системы и доступной памяти. Использование массивов, превышающих по размеру объем доступной системной оперативной памяти, замедляет работу программы, поскольку при этом данные должны читаться с диска и записываться на диск.

Hosted by uCoz